home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1997 #3 / Amiga Plus CD - 1997 - No. 03.iso / pd / programmierung / alienbreed3d2_src / cheesesauce / testcache < prev    next >
Text File  |  1997-01-31  |  4KB  |  246 lines

  1.  
  2.  
  3.  
  4.  
  5. maxscrdiv EQU 8
  6. max3ddiv EQU 5
  7. playerheight EQU 8*1024
  8.  
  9. xpos EQU 0    ;l
  10. zpos EQU 4    ;l
  11. zsinval EQU 8    ;w
  12. zcosval EQU 10    ;w
  13. ztox EQU 12    ;l
  14. xsinval EQU 16    ;w
  15. xcosval EQU 18    ;w
  16. xspd EQU 20    ;w
  17. zspd EQU 22    ;w
  18. mapx EQU 24    ;b
  19. mapz EQU 25    ;b
  20. whichtile EQU 26 ;b
  21. xofflight EQU 28    ;w
  22. zofflight EQU 30    ;w
  23. offlight EQU 32        ;w
  24. zlinestore EQU 34
  25. zlinedir EQU 38
  26. zposdir EQU 40
  27. zposstore EQU 42
  28. xdiststore EQU 44
  29. xdistdir EQU 46
  30. zwallfound EQU 48
  31.  
  32. xlinestore EQU 50
  33. xlinedir EQU 54
  34. xposdir EQU 56
  35. xposstore EQU 58
  36. zdiststore EQU 60
  37. zdistdir EQU 62
  38. xwallfound EQU 64
  39.  
  40.  
  41. midoffset EQU 104*4*40
  42.  
  43.  SECTION Scrn,CODE_C
  44.  
  45. OpenLib         equ -552        ; Offset for OpenLibrary.
  46. CloseLib        equ -414        ; Offset for CloseLibrary.
  47.  
  48. vhposr        equ $006    
  49. vhposrl        equ $007 
  50. bltcon0        equ $40 
  51. bltcon1        equ $42
  52. bltcpt        equ $48
  53. bltbpt        equ $4c
  54. bltapt        equ $50
  55. spr0ctl        equ $142
  56. spr1ctl        equ $14a
  57. spr2ctl        equ $152
  58. spr3ctl        equ $15a
  59. spr4ctl        equ $162
  60. spr5ctl        equ $16a
  61. spr6ctl        equ $172
  62. spr7ctl        equ $17a
  63. spr0pos        equ $140
  64. spr1pos        equ $148
  65. spr2pos        equ $150
  66. spr3pos        equ $158
  67. spr4pos        equ $160
  68. spr5pos        equ $168
  69. spr6pos        equ $170
  70. spr7pos        equ $178
  71. bltdpt         equ $54
  72. bltafwm        equ $44
  73. bltalwm        equ $46
  74. bltsize         equ $58
  75. bltcmod         equ $60
  76. bltbmod         equ $62
  77. bltamod         equ $64
  78. bltdmod         equ $66
  79. diwstart        equ $8e         ; Screen hardware registers.
  80. diwstop         equ $90
  81. ddfstart        equ $92
  82. ddfstop         equ $94
  83. bplcon0         equ $100
  84. bplcon1         equ $102
  85. col0            equ $180
  86. col1            equ $182
  87. col2        equ $184
  88. col3        equ $186
  89. col4        equ $188
  90. col5        equ $18a
  91. col6        equ $18c
  92. col7        equ $18e
  93. col8            equ $190
  94. col9            equ $192
  95. col10           equ $194
  96. dmacon        equ $96
  97. dmaconr        equ $002
  98. intenar        equ $01c
  99. intena        equ $09a
  100. intreq        equ $09c
  101. intreqr        equ $01e
  102. intreqrl    equ $01f
  103. bpl1pth         equ $e0
  104. bpl1ptl         equ $e2
  105. bpl2pth        equ $e4
  106. bpl2ptl        equ $e6
  107. bpl3pth        equ $e8
  108. bpl3ptl        equ $ea
  109. bpl4pth        equ $ec
  110. bpl4ptl        equ $ee
  111. bpl5pth        equ $f0
  112. bpl5ptl        equ $f2
  113. bpl6pth        equ $f4
  114. bpl6ptl        equ $f6
  115. bpl7pth        equ $f8
  116. bpl7ptl        equ $fa
  117.  
  118. ** This waits for the blitter to finish before allowing program
  119. ** execution to continue.
  120.  
  121. WB MACRO
  122. \@bf:
  123.  btst #6,dmaconr(a6)
  124.  bne.s \@bf
  125.  ENDM
  126.  
  127. *Another version for when d6 <> dff000
  128.  
  129. WBSLOW MACRO
  130. \@bf:
  131.  btst #6,$dff000+dmaconr
  132.  bne.s \@bf
  133.  ENDM
  134.  
  135.  
  136. **
  137.  
  138.  include "macros.i"
  139.  include "ab3:source/defs.i"
  140.  
  141.  jmp stuff
  142. endstuff:
  143.  
  144.  move.l #$dff000,a6    ; NB V. IMPORTANT: A6=CUSTOM BASE
  145.  
  146. *** Put myself in supervisor mode
  147.  
  148.  move.l #blag,$80
  149.  trap #0
  150. ; move.l $6c,d0
  151. ; move.l #blag,$6c
  152. ; move.w #$8010,intreq(a6)
  153.  
  154.  rts
  155.  
  156. saveit: ds.l 10
  157.  
  158. saveinters: dc.w 0
  159.  
  160. blag:
  161. ; move.w #$10,intreq(a6)
  162. ; move.l d0,$6c
  163. ; move.w #$7fff,intena(a6)
  164.  
  165.  CACHE_ON d2
  166.  
  167.  bsr putinmem
  168.  move.w #4,putinmem+2
  169.  CACHE_CLEAR d2
  170.  CACHE_ON d2
  171.  bsr putinmem
  172.  move.w #6,putinmem+2
  173.  bsr putinmem
  174.  
  175.  rte
  176.  
  177. putinmem:
  178.  move.w #0,testit
  179.  rts
  180. testit:
  181.  dc.w 0
  182.  
  183. old: dc.l 0
  184.  
  185. stuff:
  186.  move.l 4.w,a6          ; Get EXECBASE.
  187.  lea gfxname(PC),a1     ; Point to 'graphics.library' string.
  188.  moveq #0,d0            ; Ignore version number.
  189.  jsr OpenLib(a6)        ; Open the library.
  190.  move.l d0,a1           ; Store library address.
  191.  move.l 38(a1),old      ; Store workbench copper address.
  192.  move.l 4.w,a6          ; Get EXECBASE again.    
  193.  jsr CloseLib(a6)       ; Close the library.
  194.  
  195.  jmp endstuff
  196.  
  197. gfxname dc.b "graphics.library",0
  198.  
  199.  cnop 0,64
  200.  
  201. Panel:
  202.  incbin "PanelRaw"
  203.  
  204. scrntab:
  205.  ds.b 16
  206. val SET 32
  207.  REPT 96
  208.  dc.b val,val,val
  209. val SET val+1
  210.  ENDR
  211.  ds.b 16
  212.  
  213.  cnop 0,64
  214. scrn:
  215.  
  216.  dcb.l 8,$33333333
  217.  dc.l 0
  218.  dc.l 0
  219.  
  220.  dcb.l 8,$0f0f0f0f
  221.  dc.l 0
  222.  dc.l 0
  223.  
  224.  dcb.l 8,$00ff00ff
  225.  dc.l 0
  226.  dc.l 0
  227.  
  228.  dcb.l 8,$0000ffff
  229.  dc.l 0
  230.  dc.l 0
  231.  
  232.  dc.l 0,-1,0,-1,0,-1,0,-1
  233.  dc.l 0
  234.  dc.l 0
  235.  
  236.  dc.l -1,-1,0,0,-1,-1,0,0
  237.  dc.l 0
  238.  dc.l 0
  239.  
  240.  dc.l 0,0,-1,-1,-1,-1,-1,-1
  241.  dc.l 0
  242.  dc.l 0
  243.  
  244.  
  245.  
  246.